package jsu.weizixuan.likesystem.config;

import org.springframework.amqp.AmqpException;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.retry.support.RetryTemplate;

@Configuration
public class RetryConfig {

    @Bean("producerRetryTemplate")
    public RetryTemplate producerRetryTemplate() {
        return RetryTemplate.builder()
                .maxAttempts(3)                       // 重试 3 次（含首次）
                .exponentialBackoff(1000, 2, 5000)    // 初始 1 s，倍数 2，最大 5 s
                .retryOn(AmqpException.class)         // 仅对 AmqpException 重试
                .build();
    }
}